package com.lyd.productanalyse.entity;

import lombok.Data;
import org.springframework.util.StringUtils;

import java.io.Serializable;

/**
 * 描述 数据分析参数
 *
 * @author liyadong
 * @created 2023-11-21 09:18
 */
@Data
public class ExcelAnalyseVO implements Serializable {
    /**
     * 默认解析的sheet索引
     */
    private static final Integer SHEET_INDEX  = 4;
    /**
     * 默认分组字段
     */
    private static final String DEFAULT_GROUP_FIELD = "8";
    /**
     * 默认过滤比例
     */
    private static final String DEFAULT_PERCENT = "0.8";
    /**
     * 文件全路径
     */
    private String fileName;

    /**
     * sheet数据所在位置索引
     */
    private Integer sheetIndex;

    /**
     * 过滤比例
     */
    private String percent;

    /**
     * 分组字段
     */
    private String groupField;

    /**
     * 获取sheetIndex(用户输入的索引号是从1开始的)
     *
     * @return sheetIndex - 1
     */
    public Integer getSheetIndex() {
        if (sheetIndex == null || sheetIndex == 0) {
            sheetIndex = SHEET_INDEX;
        }
        return sheetIndex - 1;
    }

    /**
     * 获取过滤比例
     *
     * @return percent - 0.8
     */
    public String getPercent() {
        if (!StringUtils.hasText(percent)) {
            percent = DEFAULT_PERCENT;
        }
        return percent;
    }

    /**
     * 获取分组字段
     *
     * @return groupField
     */
    public String getGroupField() {
        if (!StringUtils.hasText(groupField)) {
            groupField = DEFAULT_GROUP_FIELD;
        }
        return groupField;
    }

}
